using System;
using digit.Core;
using System.Data;

namespace SMS.ServiceManager
{
    public class MessageOutInfo
    {
        #region CONSTRUCTORS
        public MessageOutInfo()
        {

            this.m_msgOutID = Util.NULL_LONG;
            this.m_msgInID = Util.NULL_LONG;
            this.m_mobileNo = Util.NULL_STRING;
            this.m_receiverMobileNo = Util.NULL_STRING;
            this.m_serviceID = Util.NULL_STRING;
            this.m_commandCode = Util.NULL_STRING;
            this.m_subCode1 = Util.NULL_STRING;
            this.m_subCode2 = Util.NULL_STRING;
            this.m_subCode3 = Util.NULL_STRING;
            this.m_msgOutContent = Util.NULL_STRING;
            this.m_msgInContent = Util.NULL_STRING;
            this.m_requestID = Util.NULL_LONG;
            this.m_msgType = Util.NULL_INT;
            this.m_contentType = Util.NULL_INT;
            this.m_requestTime = Util.NULL_DATETIME;
            this.m_responseTime = Util.NULL_DATETIME;
            this.m_messageID = Util.NULL_STRING;
            this.m_isCDR = Util.NULL_INT;
            this.m_isMore = Util.NULL_INT;
            this.m_msgTotal = Util.NULL_INT;
            this.m_msgIndex = Util.NULL_INT;
            this.m_status = Util.NULL_INT;
        }
        public MessageOutInfo(long msgOutID, long msgInID, string mobileNo, string receiverMobileNo, string serviceID, string commandCode, string subCode1, string subCode2, string subCode3, string msgOutContent, string msgInContent, long requestID, int msgType, int contentType, DateTime requestTime, DateTime responseTime, string messageID, int isCDR, int isMore, int msgTotal, int msgIndex, int status)
        {

            this.m_msgOutID = msgOutID;
            this.m_msgInID = msgInID;
            this.m_mobileNo = mobileNo;
            this.m_receiverMobileNo = receiverMobileNo;
            this.m_serviceID = serviceID;
            this.m_commandCode = commandCode;
            this.m_subCode1 = subCode1;
            this.m_subCode2 = subCode2;
            this.m_subCode3 = subCode3;
            this.m_msgOutContent = msgOutContent;
            this.m_msgInContent = msgInContent;
            this.m_requestID = requestID;
            this.m_msgType = msgType;
            this.m_contentType = contentType;
            this.m_requestTime = requestTime;
            this.m_responseTime = responseTime;
            this.m_messageID = messageID;
            this.m_isCDR = isCDR;
            this.m_isMore = isMore;
            this.m_msgTotal = msgTotal;
            this.m_msgIndex = msgIndex;
            this.m_status = status;
        }
        public MessageOutInfo(DataRow dRow)
        {

            this.m_msgOutID = (long)Util.ReplaceDBNullTo(dRow["msgOutID"], Util.NULL_LONG);
            this.m_msgInID = (long)Util.ReplaceDBNullTo(dRow["msgInID"], Util.NULL_LONG);
            this.m_mobileNo = Util.ReplaceDBNullTo(dRow["mobileNo"], Util.NULL_STRING).ToString();
            this.m_receiverMobileNo = Util.ReplaceDBNullTo(dRow["receiverMobileNo"], Util.NULL_STRING).ToString();
            this.m_serviceID = Util.ReplaceDBNullTo(dRow["serviceID"], Util.NULL_STRING).ToString();
            this.m_commandCode = Util.ReplaceDBNullTo(dRow["commandCode"], Util.NULL_STRING).ToString();
            this.m_subCode1 = Util.ReplaceDBNullTo(dRow["subCode1"], Util.NULL_STRING).ToString();
            this.m_subCode2 = Util.ReplaceDBNullTo(dRow["subCode2"], Util.NULL_STRING).ToString();
            this.m_subCode3 = Util.ReplaceDBNullTo(dRow["subCode3"], Util.NULL_STRING).ToString();
            this.m_msgOutContent = Util.ReplaceDBNullTo(dRow["msgOutContent"], Util.NULL_STRING).ToString();
            this.m_msgInContent = Util.ReplaceDBNullTo(dRow["msgInContent"], Util.NULL_STRING).ToString();
            this.m_requestID = (long)Util.ReplaceDBNullTo(dRow["requestID"], Util.NULL_LONG);
            this.m_msgType = (int)Util.ReplaceDBNullTo(dRow["msgType"], Util.NULL_INT);
            this.m_contentType = (int)Util.ReplaceDBNullTo(dRow["contentType"], Util.NULL_INT);
            this.m_requestTime = (DateTime)Util.ReplaceDBNullTo(dRow["requestTime"], Util.NULL_DATETIME);
            this.m_responseTime = (DateTime)Util.ReplaceDBNullTo(dRow["responseTime"], Util.NULL_DATETIME);
            this.m_messageID = Util.ReplaceDBNullTo(dRow["messageID"], Util.NULL_STRING).ToString();
            this.m_isCDR = (int)Util.ReplaceDBNullTo(dRow["isCDR"], Util.NULL_INT);
            this.m_isMore = (int)Util.ReplaceDBNullTo(dRow["isMore"], Util.NULL_INT);
            this.m_msgTotal = (int)Util.ReplaceDBNullTo(dRow["msgTotal"], Util.NULL_INT);
            this.m_msgIndex = (int)Util.ReplaceDBNullTo(dRow["msgIndex"], Util.NULL_INT);
            this.m_status = (int)Util.ReplaceDBNullTo(dRow["status"], Util.NULL_INT);
        }
        #endregion

        #region ATTRIBUTES
        private long m_msgOutID;
        private long m_msgInID;
        private string m_mobileNo;
        private string m_receiverMobileNo;
        private string m_serviceID;
        private string m_commandCode;
        private string m_subCode1;
        private string m_subCode2;
        private string m_subCode3;
        private string m_msgOutContent;
        private string m_msgInContent;
        private long m_requestID;
        private int m_msgType;
        private int m_contentType;
        private DateTime m_requestTime;
        private DateTime m_responseTime;
        private string m_messageID;
        private int m_isCDR;
        private int m_isMore;
        private int m_msgTotal;
        private int m_msgIndex;
        private int m_status;
        #endregion

        #region PROPERTIES
        public long MsgOutID
        {
            get
            {
                return this.m_msgOutID;
            }
            set
            {
                this.m_msgOutID = value;
            }
        }

        public long MsgInID
        {
            get
            {
                return this.m_msgInID;
            }
            set
            {
                this.m_msgInID = value;
            }
        }

        public string MobileNo
        {
            get
            {
                return this.m_mobileNo;
            }
            set
            {
                this.m_mobileNo = value;
            }
        }

        public string ReceiverMobileNo
        {
            get
            {
                return this.m_receiverMobileNo;
            }
            set
            {
                this.m_receiverMobileNo = value;
            }
        }

        public string ServiceID
        {
            get
            {
                return this.m_serviceID;
            }
            set
            {
                this.m_serviceID = value;
            }
        }

        public string CommandCode
        {
            get
            {
                return this.m_commandCode;
            }
            set
            {
                this.m_commandCode = value;
            }
        }

        public string SubCode1
        {
            get
            {
                return this.m_subCode1;
            }
            set
            {
                this.m_subCode1 = value;
            }
        }

        public string SubCode2
        {
            get
            {
                return this.m_subCode2;
            }
            set
            {
                this.m_subCode2 = value;
            }
        }

        public string SubCode3
        {
            get
            {
                return this.m_subCode3;
            }
            set
            {
                this.m_subCode3 = value;
            }
        }

        public string MsgOutContent
        {
            get
            {
                return this.m_msgOutContent;
            }
            set
            {
                this.m_msgOutContent = value;
            }
        }

        public string MsgInContent
        {
            get
            {
                return this.m_msgInContent;
            }
            set
            {
                this.m_msgInContent = value;
            }
        }

        public long RequestID
        {
            get
            {
                return this.m_requestID;
            }
            set
            {
                this.m_requestID = value;
            }
        }

        public int MsgType
        {
            get
            {
                return this.m_msgType;
            }
            set
            {
                this.m_msgType = value;
            }
        }

        public int ContentType
        {
            get
            {
                return this.m_contentType;
            }
            set
            {
                this.m_contentType = value;
            }
        }

        public DateTime RequestTime
        {
            get
            {
                return this.m_requestTime;
            }
            set
            {
                this.m_requestTime = value;
            }
        }

        public DateTime ResponseTime
        {
            get
            {
                return this.m_responseTime;
            }
            set
            {
                this.m_responseTime = value;
            }
        }

        public string MessageID
        {
            get
            {
                return this.m_messageID;
            }
            set
            {
                this.m_messageID = value;
            }
        }

        public int IsCDR
        {
            get
            {
                return this.m_isCDR;
            }
            set
            {
                this.m_isCDR = value;
            }
        }

        public int IsMore
        {
            get
            {
                return this.m_isMore;
            }
            set
            {
                this.m_isMore = value;
            }
        }

        public int MsgTotal
        {
            get
            {
                return this.m_msgTotal;
            }
            set
            {
                this.m_msgTotal = value;
            }
        }

        public int MsgIndex
        {
            get
            {
                return this.m_msgIndex;
            }
            set
            {
                this.m_msgIndex = value;
            }
        }

        public int Status
        {
            get
            {
                return this.m_status;
            }
            set
            {
                this.m_status = value;
            }
        }

        #endregion
    }
}